The present invention relates to a technology for simulating and verifying the functions of a communication service specification, to be realized in a service program, to support the generation of the service program used in a communication system.
A communication service is realized in a switching unit, or an intelligent network, etc., and has become more and more vigorously diversified and complicated. This will tend to prevail in the near future with the increasing use of a broadband ISDN. Accordingly, it is desired that a service program for controlling a communication service can be generated quickly and easily.
A developer of a service first describes a specification of his communication service according to which a communication program is developed and tested. Therefore, the delay in detecting an error in the specification causes problems in the following steps of the specification described based on the preceding erroneous portion of the specification, thereby prolonging a successful completion in developing the service. Also, for developing a service easily and simply, it is desirable that only "describing a specification" is required in a service development, and the following steps such as developing a program, etc. can be performed through automatic conversions.
As described above, a highly efficient method of verifying a communication service specification is earnestly demanded.
In this connection, a process of generating a service program for use in an intelligent network is considered.
An intelligent network having a computer connected to a switching unit provides a highly efficient communication service. As shown in FIG. 1, it comprises a service switch node 101, a service control node 102, a number of telephone terminals (or terminals) 103, 104, . . .
The service switch node 101 comprises a number of switching units 101a, 101b, . . . , each switching unit comprising a communication line switch (SW), a central control processor (CCP), and, not shown in FIG. 1, a subscriber circuit, a trunk, etc.
The service control node 102 is configured by a computer and comprises a central processing unit (CPU), a storage unit MM for storing a service program SVP, and a data base DB, and transmits data to and from each switching unit.
In such an intelligent network, when a call designated by a specific number is generated by a calling subscriber A, calling switching unit 101a sends a specific number to the CPU of the service control node 102. According to a service program SVP, the CPU recognizes a service corresponding to the inputted specified number. If a free phone service, a personal number call service, etc. are requested the telephone number of a receiving subscriber B is obtained from the data base DB, and the result (the telephone number, etc.) is notified to the calling switching unit 101a. Thus, a normal path is established in the service switch node 101.
A service program in an intelligent network is generated as follows as shown in FIG. 2. That is, a user (a developer of a service) generates, using a specification editor SPED in a service management system 201, a communication service specification SSPC in which a specification of a service is described. Next, the user verifies whether or not the communication service specification SSPC is valid in the service management system 201. After the verification, the communication service specification SSPC is converted to a service program SVP in an executable form. The executable service program SVP thus obtained is loaded to the service control node 102 and used for a practical service.
The first technique for easily verifying a communication service specification in the intelligent network includes simulating the operation of each apparatus or unit for use in a service, displaying the configuration of the apparatus or unit on a screen, and outputting the result on a printer, etc. If this technique is successfully applied to a communication system in the intelligent network, the operator can simulate the operation of a communication service according to a communication service specification, display the result on a screen, or output the result as a sound, thereby realizing a communication service simulator capable of verifying a service specification in an interaction mode.
However, to simulate a communication service, the following specific problems must be solved.
Problem 1: A communication system incorporates a number of terminals. However, considering the efficiency of a data memory or the expansion of the scale of a system, it is not practical that all terminals are registered in a simulator. Additionally, there arises a problem of a less easy operation for a user when he registers all terminals before a simulation.
Problem 2: A screen display in a simulation operation indicates a time point in a series of service processes. Therefore, a user himself must memorize what kinds of operations he performed before and how the simulated communication system operated, thereby making it impossible for the user to memorize the entire history especially for a complicated service.
Problem 3: When a branch exists in a service, the operation must be repeated from the first service to the point of the branch to execute each of the operations following the branch as long as a simulator is operated sequentially.
Problem 4: When a sound output is simulated at each terminal in addition to a screen display, it is hard to exactly determine a terminal for outputting bell sounds, various sounds, or announcement, etc. because a plurality of terminals are displayed on a screen during a simulating operation.
Problem 5: During a simulating operation, a change in the state of a communication system is indicated as a change in a graphic representation on a screen, which requires a burden of visually searching for a change.
To efficiently verify a communication service specification, the above described user interface must be appropriately provided and the verification must be automatically performed.
That is, conventionally, a communication service specification is verified manually by a checker. A human being can verify a representation not in a formal language but in a natural language, and can perform a high level verification including a check for a semantic error as well as a logical error. However, a manual verification usually takes a long time and often overlooks errors. Therefore, it is desired that a communication service specification is stored in a computer in a formal language, and is verified automatically.
However, there is a problem that all errors contained in a communication service specification cannot be detected by an easy mechanical method because the determination as to whether or not a description in a communication service specification contains an error does not always depend on the description itself but instead, on another part in the specification. Moreover, some errors indicate logical inconsistency, and others indicate a semantic error, each being diversified in its own way.